<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Remotion.Development</name>
    </assembly>
    <members>
        <member name="T:Remotion.Development.UnitTesting.AssemblyCompilationException">
            <summary>
            The <see cref="T:Remotion.Development.UnitTesting.AssemblyCompilationException"/> is thrown by the <see cref="T:Remotion.Development.UnitTesting.AssemblyCompiler"/> type when compilation errors occured.
            </summary>
        </member>
        <member name="T:Remotion.Development.Mixins.DebuggerWorkaroundMixinTypeGeneratorDecorator">
            <summary>
            Decorates <see cref="T:Remotion.Mixins.CodeGeneration.IMixinTypeGenerator"/> in order to notify <see cref="T:Remotion.Development.Mixins.DebuggerWorkaroundModuleManagerDecorator"/> when the type is actually 
            generated.
            </summary>
        </member>
        <member name="T:Remotion.Development.Mixins.DebuggerWorkaroundModuleManagerDecorator">
            <summary>
            Decorates an <see cref="T:Remotion.Mixins.CodeGeneration.IModuleManager"/>, counting the generated types and resetting the inner <see cref="T:Remotion.Mixins.CodeGeneration.IModuleManager"/> when the number 
            of types exceeds the given threshold. This can be used as a workaround for the Reflection.Emit bug where calls to 
            <see cref="M:System.Reflection.Emit.TypeBuilder.CreateType"/> take a very long time to complete  when the debugger is attached and a large number of types is generated 
            into the same AssemblyBuilder.
            </summary>
        </member>
        <member name="T:Remotion.Development.Mixins.DebuggerWorkaroundTypeGeneratorDecorator">
            <summary>
            Decorates <see cref="T:Remotion.Mixins.CodeGeneration.ITypeGenerator"/> in order to notify <see cref="T:Remotion.Development.Mixins.DebuggerWorkaroundModuleManagerDecorator"/> when the type is actually 
            generated.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Enumerables.EnumerableExtensions">
            <summary>
            Provides extensions methods for <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
            </summary>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Enumerables.EnumerableExtensions.AsOneTime``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Wraps an <see cref="T:System.Collections.Generic.IEnumerable`1"/> to ensure that it is iterated only once.
            </summary>
            <typeparam name="T">The element type of the <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</typeparam>
            <param name="source">The source <see cref="T:System.Collections.Generic.IEnumerable`1"/> to be wrapped.</param>
            <returns>An instance of <see cref="T:Remotion.Development.UnitTesting.Enumerables.OneTimeEnumerable`1"/> decorating the <paramref name="source"/>.</returns>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Enumerables.EnumerableExtensions.ForceEnumeration``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Forces the enumeration of the <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
            </summary>
            <typeparam name="T">The element type of the <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</typeparam>
            <param name="source">The source <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</param>
            <returns>An array containing all values computed by <paramref name="source"/>.</returns>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Enumerables.OneTimeEnumerable`1">
            <summary>
            A decorator for <see cref="T:System.Collections.Generic.IEnumerable`1"/> instances ensuring that they are iterated only once.
            </summary>
            <typeparam name="T">The element type of the <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</typeparam>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Enumerables.OneTimeEnumerable`1.GetEnumerator">
            <inheritdoc />
        </member>
        <member name="T:Remotion.Development.UnitTesting.GCCounter">
            <summary>
            Counts the number of garbage collections that occured between <see cref="M:Remotion.Development.UnitTesting.GCCounter.BeginCount"/> and <see cref="M:Remotion.Development.UnitTesting.GCCounter.EndCount"/> 
            and prints the result using <see cref="M:Remotion.Development.UnitTesting.GCCounter.PrintCount(System.IO.TextWriter)"/>.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.ObjectMothers.BooleanObjectMother">
            <summary>
            Provides boolean values for unit tests.
            </summary>
        </member>
        <member name="M:Remotion.Development.UnitTesting.ObjectMothers.BooleanObjectMother.GetRandomBoolean">
            <summary>
            Gets a random <see cref="T:System.Boolean"/> value. This is used by unit tests when they need code to work with arbitrary boolean values. Rather than
            duplicating the test, once for <see langword="true"/> and once for <see langword="false"/>, the test is written once and is executed 
            with both <see langword="true"/> and <see langword="false"/> values chosen at random.
            </summary>
            <returns>A random <see cref="T:System.Boolean"/> value.</returns>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Configuration.ConfigSystemHelper">
            <summary>
            The <see cref="T:Remotion.Development.UnitTesting.Configuration.ConfigSystemHelper"/> class is intended to inject a fake implementation of the <see cref="T:System.Configuration.Internal.IInternalConfigSystem"/> interface
            into the <see cref="T:System.Configuration.ConfigurationManager"/> class. The feature can be used to override the config system with custom settings during unit tests.
            </summary>
            <remarks>
            The <see cref="T:Remotion.Development.UnitTesting.Configuration.ConfigSystemHelper"/> should only be used in cases where it is necesarry to inject configuration settings into third party code.
            The preferred solution is to use the <see cref="T:Remotion.Configuration.ConfigurationWrapper"/>'s well-known instance to access the configuration, thus allowing for 
            easy faking of the configuration during unit tests through changing the well-known instance to a test specific configuration object.
            </remarks>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Configuration.ConfigurationHelper">
            <summary>
            The <see cref="T:Remotion.Development.UnitTesting.Configuration.ConfigurationHelper"/> is a ulitilty class designed to deserialize xml-fragments into configuration elements.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Configuration.FakeConfigurationWrapper">
            <summary>
            Concrete implementation of <see cref="T:Remotion.Configuration.ConfigurationWrapper"/> that fakes the access to the configuration system. Use this class for setting up
            unit tests.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Data.SqlClient.DatabaseAgent">
            <summary>Use the <see cref="T:Remotion.Development.UnitTesting.Data.SqlClient.DatabaseAgent"/> for setting up the database during unit testing.</summary>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Data.SqlClient.SqlBatchCommandException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Remotion.Development.UnitTesting.Data.SqlClient.SqlBatchCommandException"/>  class with a specified error message.
            </summary>
            <param name="message">The error message string. </param>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Data.SqlClient.SqlBatchCommandException.#ctor(System.String,System.Exception)">
            <summary>
              Initializes a new instance of the <see cref="T:Remotion.Development.UnitTesting.Data.SqlClient.SqlBatchCommandException"/> class with a specified 
              error message and a reference to the inner exception that is the cause of this exception.
            </summary>
            <param name="message">The error message string. </param>
            <param name="innerException">The inner exception reference. </param>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Dev">
            <summary>
            Provides a <see cref="P:Remotion.Development.UnitTesting.Dev.Null"/> property that can be assigned arbitrary values, and a type <see cref="T:Remotion.Development.UnitTesting.Dev.T"/> to be used as a dummy generic argument.
            </summary>
        </member>
        <member name="P:Remotion.Development.UnitTesting.Dev.Null">
            <summary>
            Use this in unit tests where you need to assign a value to
            something (e.g., for syntactic reasons, or to remove unused variable warnings), but don't care about the result of the assignment.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Dev.T">
            <summary>
            Defines a dummy type that can be used as a generic argument.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Dev`1">
            <summary>
            Provides a <see cref="F:Remotion.Development.UnitTesting.Dev`1.Dummy"/> field that can be used as a ref or out parameter, and a typed <see cref="P:Remotion.Development.UnitTesting.Dev`1.Null"/> property that can be assigned 
            arbitrary values and always returns the default value for <typeparamref name="T"/>.
            </summary>
        </member>
        <member name="F:Remotion.Development.UnitTesting.Dev`1.Dummy">
            <summary>
            Use this in unit tests where you need a ref or out parameter but but don't care about the result of the assignment.
            Never rely on the value of the <see cref="F:Remotion.Development.UnitTesting.Dev`1.Dummy"/> field, it will be changed by other tests.
            </summary>
        </member>
        <member name="P:Remotion.Development.UnitTesting.Dev`1.Null">
            <summary>
            Use this in unit tests where you need to assign a value to
            something (e.g., for syntactic reasons, or to remove unused variable warnings), but don't care about the result of the assignment.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Configuration.FakeInternalConfigSystem">
            <summary>
            Fake implementation of the <see cref="T:System.Configuration.Internal.IInternalConfigSystem"/> interface. Used by the <see cref="T:Remotion.Development.UnitTesting.Configuration.ConfigSystemHelper"/> to fake the 
            configuration.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.IO.TempFile">
            <summary>
            The <see cref="T:Remotion.Development.UnitTesting.IO.TempFile"/> class represents a disposable temp file created via the <see cref="M:System.IO.Path.GetTempFileName"/> method.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.ObjectMothers.DictionaryObjectMother">
            <summary>
            Supplies factories to easily create <see cref="T:System.Collections.Generic.Dictionary`2"/> instances initialized with up to 4 key-value-pairs.
            </summary>
            <example><code>
            <![CDATA[  
            var d = DictionaryObjectMother.New("A",1, "B",2, "C",3); // d["A"]=1, d["B"]=2,...
            ]]>
            </code></example>
        </member>
        <member name="T:Remotion.Development.UnitTesting.ObjectMothers.ListObjectMother">
            <summary>
            Supplies factories to easily create <see cref="T:System.Collections.Generic.List`1"/> instances.
            </summary>
            <example><code>
            <![CDATA[  
            var listList = ListObjectMother.New( List.New(1,2), List.New(3,4) );
            ]]>
            </code></example>
        </member>
        <member name="T:Remotion.Development.UnitTesting.ObjectMothers.QueueObjectMother">
            <summary>
            Supplies factories to easily create <see cref="T:System.Collections.Generic.Queue`1"/> instances.
            </summary>
            <example><code>
            <![CDATA[  
            var queue = QueueObjectMother.New("process","emit0","wait");
            ]]>
            </code></example>
        </member>
        <member name="T:Remotion.Development.UnitTesting.PrivateInvoke">
            <summary>
            Provides utility functions for accessing non-public types and members.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Reflection.NormalizingMemberInfoFromExpressionUtility">
            <summary>
            Provides typed access to the reflection objects for members referenced in <see cref="T:System.Linq.Expressions.Expression"/> instances.
            Note that the returned <see cref="T:System.Reflection.MemberInfo"/>s represents exactly the member specified by the user.
            That means that the <see cref="P:System.Reflection.MemberInfo.ReflectedType"/> equals the generic parameter <c>TSourceObject</c>.
            See also <see cref="T:Remotion.Utilities.MemberInfoFromExpressionUtility"/>.
            </summary>
            <remarks>
            This class has no support for <i>normalizing</i> methods and properties defined in interfaces and explicit interface implementations.
            </remarks>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Resources.ResourceNotFoundException">
             <summary>
            Represents errors that occur during resource searching.
             </summary>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Resources.ResourceNotFoundException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Remotion.Development.UnitTesting.Resources.ResourceNotFoundException"/>  class with a specified error message.
            </summary>
            <param name="message">The error message string. </param>
        </member>
        <member name="M:Remotion.Development.UnitTesting.Resources.ResourceNotFoundException.#ctor(System.String,System.Exception)">
            <summary>
              Initializes a new instance of the <see cref="T:Remotion.Development.UnitTesting.Resources.ResourceNotFoundException"/> class with a specified 
              error message and a reference to the inner exception that is the cause of this exception.
            </summary>
            <param name="message">The error message string. </param>
            <param name="innerException">The inner exception reference. </param>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.PermissionSets">
            <summary>
            <see cref="T:Remotion.Development.UnitTesting.Sandboxing.PermissionSets"/> contains static methods to get the permissions for different security levels.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.SandboxTestRunner">
            <summary>
            <see cref="T:Remotion.Development.UnitTesting.Sandboxing.SandboxTestRunner"/> executes unit tests for the given types.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.Sandbox">
            <summary>
            Provides functionality to run code in a sandboxed <see cref="P:Remotion.Development.UnitTesting.Sandboxing.Sandbox.AppDomain"/>, ie., an <see cref="P:Remotion.Development.UnitTesting.Sandboxing.Sandbox.AppDomain"/> with restricted permissions.
            </summary>
            <remarks>
            <para>
            Create a sandbox via <see cref="M:Remotion.Development.UnitTesting.Sandboxing.Sandbox.CreateSandbox(System.Security.IPermission[],System.Reflection.Assembly[])"/> and specify the restricted permissions for ordinary assemblies in the sandbox, as well as
            a list of assemblies to be fully trusted. Fully-trusted assemblies might still need to call <see cref="M:System.Security.CodeAccessPermission.Assert"/>
            in order to execute code restricted by the permission set.
            </para>
            <para>
            To execute code in the sandbox, use <see cref="M:System.AppDomain.DoCallBack(System.CrossAppDomainDelegate)"/> or
            create an instance of a class derived by <see cref="T:System.MarshalByRefObject"/> via <see cref="M:Remotion.Development.UnitTesting.Sandboxing.Sandbox.CreateSandboxedInstance``1(System.Security.IPermission[])"/>.
            </para>
            </remarks>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.TestFailedException">
            <summary>
            <see cref="T:Remotion.Development.UnitTesting.Sandboxing.TestFailedException"/> is thrown when <see cref="M:Remotion.Development.UnitTesting.Sandboxing.TestResult.EnsureNotFailed"/> is called and the specific test has been failed.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.TestFixtureResult">
            <summary>
            <see cref="T:Remotion.Development.UnitTesting.Sandboxing.TestFixtureResult"/> holds the type of the test class and the result of the test methods.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Sandboxing.TestResult">
            <summary>
            <see cref="T:Remotion.Development.UnitTesting.Sandboxing.TestResult"/> represents a single result for a test method.
            </summary>
        </member>
        <member name="T:Remotion.Development.UnitTesting.Serializer">
            <summary>
            Provides quick serialization and deserialization functionality for unit tests.
            </summary>
            <remarks>The methods of this class use a <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter"/> for serialization.</remarks>
        </member>
        <member name="T:Remotion.Development.UnitTesting.ServiceLocatorScope">
            <summary>
            Sets <see cref="P:Microsoft.Practices.ServiceLocation.ServiceLocator.Current"/> to a given <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/> temporarily, resetting it, when <see cref="M:Remotion.Development.UnitTesting.ServiceLocatorScope.Dispose"/>
            is called.
            </summary>
        </member>
    </members>
</doc>
